home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / develop™ Technical Journal / develop Issue 27 code / Internet_Config_Assistant.sit / Internet Config Assistant / toolkit / TDrawContext.h < prev    next >
MacBinary  |  1996-06-30  |  10.3 KB  |  [TEXT/CWIE]

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: MacBinary (archive/macBinary).

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Sun Jun 30 13:49:40 1996, modified Sun Jun 30 13:49:40 1996, creator 'CWIE', type ASCII, 9768 bytes "TDrawContext.h" , at 0x26a8 456 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[CWIE]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0e 54 44 72 61 77 43 | 6f 6e 74 65 78 74 2e 68 |..TDrawC|ontext.h|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 43 57 49 | 45 01 00 00 00 00 00 00 |.TEXTCWI|E.......|
|00000050| 00 00 00 00 00 26 28 00 | 00 01 c8 ad fc 6e b4 ad |.....&(.|.....n..|
|00000060| fc 6e b4 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.n......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 09 81 00 00 |........|........|
|00000080| 2f 2a 0d 09 46 69 6c 65 | 3a 09 09 54 44 72 61 77 |/*..File|:..TDraw|
|00000090| 43 6f 6e 74 65 78 74 2e | 68 0d 0d 09 43 6f 6e 74 |Context.|h...Cont|
|000000a0| 61 69 6e 73 3a 09 49 6e | 74 65 72 66 61 63 65 20 |ains:.In|terface |
|000000b0| 66 69 6c 65 20 66 6f 72 | 20 61 20 51 75 69 63 6b |file for| a Quick|
|000000c0| 44 72 61 77 20 6c 61 79 | 65 72 20 63 6c 61 73 73 |Draw lay|er class|
|000000d0| 0d 0d 09 57 72 69 74 74 | 65 6e 20 62 79 3a 09 41 |...Writt|en by:.A|
|000000e0| 72 6e 6f 20 47 6f 75 72 | 64 6f 6c 0d 0d 09 43 6f |rno Gour|dol...Co|
|000000f0| 70 79 72 69 67 68 74 3a | 09 a9 20 31 39 39 34 2d |pyright:|.. 1994-|
|00000100| 31 39 39 35 20 62 79 20 | 41 70 70 6c 65 20 43 6f |1995 by |Apple Co|
|00000110| 6d 70 75 74 65 72 2c 20 | 49 6e 63 2e 2c 20 61 6c |mputer, |Inc., al|
|00000120| 6c 20 72 69 67 68 74 73 | 20 72 65 73 65 72 76 65 |l rights| reserve|
|00000130| 64 2e 0d 0d 2a 2f 0d 0d | 23 70 72 61 67 6d 61 20 |d...*/..|#pragma |
|00000140| 6f 6e 63 65 0d 0d 23 69 | 66 6e 64 65 66 20 5f 5f |once..#i|fndef __|
|00000150| 54 44 52 41 57 43 4f 4e | 54 45 58 54 5f 5f 0d 23 |TDRAWCON|TEXT__.#|
|00000160| 64 65 66 69 6e 65 20 5f | 5f 54 44 52 41 57 43 4f |define _|_TDRAWCO|
|00000170| 4e 54 45 58 54 5f 5f 0d | 0d 23 69 6e 63 6c 75 64 |NTEXT__.|.#includ|
|00000180| 65 20 22 61 73 73 65 72 | 74 2e 68 22 0d 0d 23 69 |e "asser|t.h"..#i|
|00000190| 6e 63 6c 75 64 65 20 3c | 51 75 69 63 6b 64 72 61 |nclude <|Quickdra|
|000001a0| 77 2e 68 3e 0d 23 69 6e | 63 6c 75 64 65 20 22 43 |w.h>.#in|clude "C|
|000001b0| 52 65 63 74 2e 68 22 0d | 23 69 6e 63 6c 75 64 65 |Rect.h".|#include|
|000001c0| 20 22 43 43 6f 6c 6f 72 | 2e 68 22 0d 0d 0d 0d 2f | "CColor|.h"..../|
|000001d0| 2f 0d 2f 2f 09 43 6c 61 | 73 73 20 54 44 72 61 77 |/.//.Cla|ss TDraw|
|000001e0| 43 6f 6e 74 65 78 74 0d | 2f 2f 0d 2f 2f 09 43 6f |Context.|//.//.Co|
|000001f0| 6e 74 61 69 6e 73 20 72 | 65 6c 61 74 65 64 20 67 |ntains r|elated g|
|00000200| 72 61 70 68 69 63 61 6c | 20 69 6e 66 6f 72 6d 61 |raphical| informa|
|00000210| 74 69 6f 6e 3a 0d 2f 2f | 09 09 2d 20 47 72 61 66 |tion:.//|..- Graf|
|00000220| 50 6f 72 74 0d 2f 2f 09 | 09 2d 20 42 61 63 6b 67 |Port.//.|.- Backg|
|00000230| 72 6f 75 6e 64 20 61 6e | 64 20 46 6f 72 65 67 72 |round an|d Foregr|
|00000240| 6f 75 6e 64 20 63 6f 6c | 6f 72 73 0d 2f 2f 09 09 |ound col|ors.//..|
|00000250| 2d 20 50 65 6e 20 73 69 | 7a 65 2c 20 6d 6f 64 65 |- Pen si|ze, mode|
|00000260| 2c 20 70 6f 73 69 74 69 | 6f 6e 2c 20 70 61 74 74 |, positi|on, patt|
|00000270| 65 72 6e 0d 0d 63 6c 61 | 73 73 20 43 54 65 6d 70 |ern..cla|ss CTemp|
|00000280| 52 67 6e 3b 0d 0d 63 6c | 61 73 73 20 54 42 69 74 |Rgn;..cl|ass TBit|
|00000290| 6d 61 70 3b 0d 0d 63 6c | 61 73 73 20 54 44 72 61 |map;..cl|ass TDra|
|000002a0| 77 43 6f 6e 74 65 78 74 | 0d 7b 0d 09 66 72 69 65 |wContext|.{..frie|
|000002b0| 6e 64 20 63 6c 61 73 73 | 20 54 44 72 61 77 43 6f |nd class| TDrawCo|
|000002c0| 6e 74 65 78 74 49 74 65 | 72 61 74 6f 72 3b 0d 70 |ntextIte|rator;.p|
|000002d0| 75 62 6c 69 63 3a 0d 09 | 2f 2f 20 63 6f 6e 73 74 |ublic:..|// const|
|000002e0| 72 75 63 74 6f 72 73 0d | 09 69 6e 6c 69 6e 65 20 |ructors.|.inline |
|000002f0| 54 44 72 61 77 43 6f 6e | 74 65 78 74 28 76 6f 69 |TDrawCon|text(voi|
|00000300| 64 29 3b 0d 09 69 6e 6c | 69 6e 65 20 54 44 72 61 |d);..inl|ine TDra|
|00000310| 77 43 6f 6e 74 65 78 74 | 28 47 72 61 66 50 74 72 |wContext|(GrafPtr|
|00000320| 20 67 72 61 66 50 74 72 | 2c 20 55 49 6e 74 31 36 | grafPtr|, UInt16|
|00000330| 20 64 65 70 74 68 20 3d | 20 31 2c 20 42 6f 6f 6c | depth =| 1, Bool|
|00000340| 65 61 6e 20 69 6e 43 6f | 6c 6f 72 20 3d 20 74 72 |ean inCo|lor = tr|
|00000350| 75 65 29 3b 0d 09 0d 09 | 2f 2f 20 64 65 73 74 72 |ue);....|// destr|
|00000360| 75 63 74 6f 72 0d 09 69 | 6e 6c 69 6e 65 20 7e 54 |uctor..i|nline ~T|
|00000370| 44 72 61 77 43 6f 6e 74 | 65 78 74 28 76 6f 69 64 |DrawCont|ext(void|
|00000380| 29 3b 0d 09 0d 09 2f 2f | 20 61 63 63 65 73 73 6f |);....//| accesso|
|00000390| 72 0d 09 69 6e 6c 69 6e | 65 20 43 52 65 63 74 20 |r..inlin|e CRect |
|000003a0| 42 6f 75 6e 64 73 28 76 | 6f 69 64 29 20 63 6f 6e |Bounds(v|oid) con|
|000003b0| 73 74 3b 0d 09 69 6e 6c | 69 6e 65 20 42 6f 6f 6c |st;..inl|ine Bool|
|000003c0| 65 61 6e 20 49 73 43 6f | 6c 6f 72 28 76 6f 69 64 |ean IsCo|lor(void|
|000003d0| 29 20 63 6f 6e 73 74 3b | 0d 09 69 6e 6c 69 6e 65 |) const;|..inline|
|000003e0| 20 55 49 6e 74 31 36 20 | 47 65 74 44 65 70 74 68 | UInt16 |GetDepth|
|000003f0| 28 76 6f 69 64 29 20 63 | 6f 6e 73 74 3b 0d 09 0d |(void) c|onst;...|
|00000400| 09 2f 2f 20 73 65 74 74 | 65 72 73 0d 09 69 6e 6c |.// sett|ers..inl|
|00000410| 69 6e 65 20 76 6f 69 64 | 20 53 65 74 50 65 6e 53 |ine void| SetPenS|
|00000420| 69 7a 65 28 47 72 61 70 | 68 69 63 61 6c 55 6e 69 |ize(Grap|hicalUni|
|00000430| 74 20 73 69 7a 65 29 20 | 63 6f 6e 73 74 3b 0d 09 |t size) |const;..|
|00000440| 76 6f 69 64 20 53 65 74 | 48 69 67 68 43 6f 6c 6f |void Set|HighColo|
|00000450| 72 28 43 43 6f 6c 6f 72 | 20 63 6f 6c 6f 72 29 3b |r(CColor| color);|
|00000460| 0d 0d 09 69 6e 6c 69 6e | 65 20 76 6f 69 64 20 43 |...inlin|e void C|
|00000470| 6f 6e 76 65 72 74 54 6f | 53 63 72 65 65 6e 28 43 |onvertTo|Screen(C|
|00000480| 50 6f 69 6e 74 26 20 70 | 6f 69 6e 74 29 20 63 6f |Point& p|oint) co|
|00000490| 6e 73 74 3b 0d 09 69 6e | 6c 69 6e 65 20 76 6f 69 |nst;..in|line voi|
|000004a0| 64 20 43 6f 6e 76 65 72 | 74 46 72 6f 6d 53 63 72 |d Conver|tFromScr|
|000004b0| 65 65 6e 28 43 50 6f 69 | 6e 74 26 20 70 6f 69 6e |een(CPoi|nt& poin|
|000004c0| 74 29 20 63 6f 6e 73 74 | 3b 0d 09 69 6e 6c 69 6e |t) const|;..inlin|
|000004d0| 65 20 76 6f 69 64 20 43 | 6f 6e 76 65 72 74 54 6f |e void C|onvertTo|
|000004e0| 53 63 72 65 65 6e 28 43 | 52 65 63 74 26 20 72 65 |Screen(C|Rect& re|
|000004f0| 63 74 29 20 63 6f 6e 73 | 74 3b 0d 09 69 6e 6c 69 |ct) cons|t;..inli|
|00000500| 6e 65 20 76 6f 69 64 20 | 43 6f 6e 76 65 72 74 46 |ne void |ConvertF|
|00000510| 72 6f 6d 53 63 72 65 65 | 6e 28 43 52 65 63 74 26 |romScree|n(CRect&|
|00000520| 20 72 65 63 74 29 20 63 | 6f 6e 73 74 3b 0d 0d 09 | rect) c|onst;...|
|00000530| 2f 2f 20 50 65 6e 20 6c | 6f 63 61 74 69 6f 6e 0d |// Pen l|ocation.|
|00000540| 09 76 6f 69 64 20 4d 6f | 76 65 50 65 6e 54 6f 28 |.void Mo|vePenTo(|
|00000550| 43 50 6f 69 6e 74 20 70 | 74 29 3b 0d 09 76 6f 69 |CPoint p|t);..voi|
|00000560| 64 20 4d 6f 76 65 50 65 | 6e 54 6f 28 47 72 61 70 |d MovePe|nTo(Grap|
|00000570| 68 69 63 61 6c 55 6e 69 | 74 20 78 2c 20 47 72 61 |hicalUni|t x, Gra|
|00000580| 70 68 69 63 61 6c 55 6e | 69 74 20 79 29 3b 0d 09 |phicalUn|it y);..|
|00000590| 76 6f 69 64 20 4d 6f 76 | 65 50 65 6e 42 79 28 47 |void Mov|ePenBy(G|
|000005a0| 72 61 70 68 69 63 61 6c | 55 6e 69 74 20 64 78 2c |raphical|Unit dx,|
|000005b0| 20 47 72 61 70 68 69 63 | 61 6c 55 6e 69 74 20 64 | Graphic|alUnit d|
|000005c0| 79 29 3b 0d 09 43 50 6f | 69 6e 74 20 50 65 6e 4c |y);..CPo|int PenL|
|000005d0| 6f 63 61 74 69 6f 6e 28 | 76 6f 69 64 29 20 63 6f |ocation(|void) co|
|000005e0| 6e 73 74 3b 0d 09 0d 09 | 2f 2f 20 44 72 61 77 69 |nst;....|// Drawi|
|000005f0| 6e 67 20 6c 69 6e 65 73 | 0d 09 76 6f 69 64 20 53 |ng lines|..void S|
|00000600| 74 72 6f 6b 65 4c 69 6e | 65 28 43 50 6f 69 6e 74 |trokeLin|e(CPoint|
|00000610| 20 74 6f 50 74 29 3b 0d | 09 76 6f 69 64 20 53 74 | toPt);.|.void St|
|00000620| 72 6f 6b 65 4c 69 6e 65 | 28 43 50 6f 69 6e 74 20 |rokeLine|(CPoint |
|00000630| 70 74 30 2c 20 43 50 6f | 69 6e 74 20 70 74 31 29 |pt0, CPo|int pt1)|
|00000640| 3b 0d 0d 09 2f 2f 20 44 | 72 61 77 69 6e 67 20 52 |;...// D|rawing R|
|00000650| 65 63 74 61 6e 67 6c 65 | 73 0d 09 76 6f 69 64 20 |ectangle|s..void |
|00000660| 53 74 72 6f 6b 65 52 65 | 63 74 28 63 6f 6e 73 74 |StrokeRe|ct(const|
|00000670| 20 43 52 65 63 74 26 20 | 72 65 63 74 29 3b 0d 09 | CRect& |rect);..|
|00000680| 76 6f 69 64 20 46 69 6c | 6c 52 65 63 74 28 63 6f |void Fil|lRect(co|
|00000690| 6e 73 74 20 43 52 65 63 | 74 26 20 72 65 63 74 29 |nst CRec|t& rect)|
|000006a0| 3b 0d 09 76 6f 69 64 20 | 49 6e 76 65 72 74 52 65 |;..void |InvertRe|
|000006b0| 63 74 28 63 6f 6e 73 74 | 20 43 52 65 63 74 26 20 |ct(const| CRect& |
|000006c0| 72 65 63 74 29 3b 0d 0d | 09 2f 2f 20 44 72 61 77 |rect);..|.// Draw|
|000006d0| 69 6e 67 20 52 65 67 69 | 6f 6e 73 0d 09 76 6f 69 |ing Regi|ons..voi|
|000006e0| 64 20 53 74 72 6f 6b 65 | 52 65 67 69 6f 6e 28 63 |d Stroke|Region(c|
|000006f0| 6f 6e 73 74 20 52 67 6e | 48 61 6e 64 6c 65 20 72 |onst Rgn|Handle r|
|00000700| 67 6e 29 3b 0d 09 76 6f | 69 64 20 46 69 6c 6c 52 |gn);..vo|id FillR|
|00000710| 65 67 69 6f 6e 28 63 6f | 6e 73 74 20 52 67 6e 48 |egion(co|nst RgnH|
|00000720| 61 6e 64 6c 65 20 72 67 | 6e 29 3b 0d 0d 09 2f 2f |andle rg|n);...//|
|00000730| 20 44 72 61 77 69 6e 67 | 20 62 69 74 6d 61 70 73 | Drawing| bitmaps|
|00000740| 0d 09 76 6f 69 64 20 44 | 72 61 77 42 69 74 6d 61 |..void D|rawBitma|
|00000750| 70 28 63 6f 6e 73 74 20 | 54 42 69 74 6d 61 70 2a |p(const |TBitmap*|
|00000760| 20 62 69 74 6d 61 70 29 | 20 63 6f 6e 73 74 3b 0d | bitmap)| const;.|
|00000770| 09 76 6f 69 64 20 44 72 | 61 77 42 69 74 6d 61 70 |.void Dr|awBitmap|
|00000780| 28 63 6f 6e 73 74 20 54 | 42 69 74 6d 61 70 2a 20 |(const T|Bitmap* |
|00000790| 62 69 74 6d 61 70 2c 20 | 43 50 6f 69 6e 74 20 77 |bitmap, |CPoint w|
|000007a0| 68 65 72 65 29 20 63 6f | 6e 73 74 3b 0d 09 76 6f |here) co|nst;..vo|
|000007b0| 69 64 20 44 72 61 77 42 | 69 74 6d 61 70 28 63 6f |id DrawB|itmap(co|
|000007c0| 6e 73 74 20 54 42 69 74 | 6d 61 70 2a 20 62 69 74 |nst TBit|map* bit|
|000007d0| 6d 61 70 2c 20 43 52 65 | 63 74 20 64 73 74 52 65 |map, CRe|ct dstRe|
|000007e0| 63 74 29 20 63 6f 6e 73 | 74 3b 0d 09 76 6f 69 64 |ct) cons|t;..void|
|000007f0| 20 44 72 61 77 42 69 74 | 6d 61 70 28 63 6f 6e 73 | DrawBit|map(cons|
|00000800| 74 20 54 42 69 74 6d 61 | 70 2a 20 62 69 74 6d 61 |t TBitma|p* bitma|
|00000810| 70 2c 20 43 52 65 63 74 | 20 64 73 74 52 65 63 74 |p, CRect| dstRect|
|00000820| 2c 20 52 67 6e 48 61 6e | 64 6c 65 20 6d 61 73 6b |, RgnHan|dle mask|
|00000830| 29 20 63 6f 6e 73 74 3b | 0d 09 76 6f 69 64 20 44 |) const;|..void D|
|00000840| 72 61 77 42 69 74 6d 61 | 70 28 63 6f 6e 73 74 20 |rawBitma|p(const |
|00000850| 54 42 69 74 6d 61 70 2a | 20 62 69 74 6d 61 70 2c |TBitmap*| bitmap,|
|00000860| 20 43 52 65 63 74 20 73 | 72 63 52 65 63 74 2c 20 | CRect s|rcRect, |
|00000870| 43 52 65 63 74 20 64 73 | 74 52 65 63 74 29 20 63 |CRect ds|tRect) c|
|00000880| 6f 6e 73 74 3b 0d 09 0d | 09 2f 2f 20 44 72 61 77 |onst;...|.// Draw|
|00000890| 69 6e 67 20 66 6f 63 75 | 73 20 72 69 6e 67 73 0d |ing focu|s rings.|
|000008a0| 09 76 6f 69 64 20 53 74 | 72 6f 6b 65 46 6f 63 75 |.void St|rokeFocu|
|000008b0| 73 52 69 6e 67 28 63 6f | 6e 73 74 20 43 52 65 63 |sRing(co|nst CRec|
|000008c0| 74 26 20 72 65 63 74 29 | 3b 0d 09 76 6f 69 64 20 |t& rect)|;..void |
|000008d0| 53 74 72 6f 6b 65 46 6f | 63 75 73 52 69 6e 67 28 |StrokeFo|cusRing(|
|000008e0| 63 6f 6e 73 74 20 52 67 | 6e 48 61 6e 64 6c 65 20 |const Rg|nHandle |
|000008f0| 72 67 6e 29 3b 0d 0d 09 | 2f 2f 20 0d 09 76 69 72 |rgn);...|// ..vir|
|00000900| 74 75 61 6c 20 42 6f 6f | 6c 65 61 6e 20 4c 6f 63 |tual Boo|lean Loc|
|00000910| 6b 28 76 6f 69 64 29 3b | 0d 09 76 69 72 74 75 61 |k(void);|..virtua|
|00000920| 6c 20 76 6f 69 64 20 55 | 6e 6c 6f 63 6b 28 76 6f |l void U|nlock(vo|
|00000930| 69 64 29 3b 0d 09 0d 70 | 72 6f 74 65 63 74 65 64 |id);...p|rotected|
|00000940| 3a 0d 09 69 6e 6c 69 6e | 65 20 42 6f 6f 6c 65 61 |:..inlin|e Boolea|
|00000950| 6e 20 49 73 43 6f 6c 6f | 72 50 6f 72 74 28 76 6f |n IsColo|rPort(vo|
|00000960| 69 64 29 20 63 6f 6e 73 | 74 3b 09 0d 0d 09 47 72 |id) cons|t;....Gr|
|00000970| 61 66 50 74 72 20 66 53 | 61 76 65 50 6f 72 74 3b |afPtr fS|avePort;|
|00000980| 09 09 2f 2f 20 47 72 61 | 66 50 6f 72 74 20 70 72 |..// Gra|fPort pr|
|00000990| 65 76 69 6f 75 73 6c 79 | 20 73 65 74 0d 09 50 65 |eviously| set..Pe|
|000009a0| 6e 53 74 61 74 65 20 66 | 53 61 76 65 50 65 6e 53 |nState f|SavePenS|
|000009b0| 74 61 74 65 3b 09 2f 2f | 20 50 65 6e 20 73 69 7a |tate;.//| Pen siz|
|000009c0| 65 2c 20 6d 6f 64 65 2c | 20 70 61 74 74 65 72 6e |e, mode,| pattern|
|000009d0| 2e 2e 2e 0d 09 52 47 42 | 43 6f 6c 6f 72 20 66 53 |.....RGB|Color fS|
|000009e0| 61 76 65 46 6f 72 65 43 | 6f 6c 6f 72 3b 0d 09 52 |aveForeC|olor;..R|
|000009f0| 47 42 43 6f 6c 6f 72 20 | 66 53 61 76 65 42 61 63 |GBColor |fSaveBac|
|00000a00| 6b 43 6f 6c 6f 72 3b 0d | 09 0d 09 47 72 61 66 50 |kColor;.|...GrafP|
|00000a10| 74 72 20 66 50 6f 72 74 | 3b 0d 09 55 49 6e 74 31 |tr fPort|;..UInt1|
|00000a20| 36 20 66 44 65 70 74 68 | 3b 0d 09 42 6f 6f 6c 65 |6 fDepth|;..Boole|
|00000a30| 61 6e 20 66 49 73 43 6f | 6c 6f 72 3b 0d 09 0d 09 |an fIsCo|lor;....|
|00000a40| 53 49 6e 74 31 36 20 66 | 4c 6f 63 6b 43 6f 75 6e |SInt16 f|LockCoun|
|00000a50| 74 3b 0d 7d 3b 0d 0d 0d | 2f 2f 20 49 6e 70 75 74 |t;.};...|// Input|
|00000a60| 20 49 74 65 72 61 74 6f | 72 0d 63 6c 61 73 73 20 | Iterato|r.class |
|00000a70| 54 44 72 61 77 43 6f 6e | 74 65 78 74 49 74 65 72 |TDrawCon|textIter|
|00000a80| 61 74 6f 72 0d 7b 0d 70 | 75 62 6c 69 63 3a 0d 09 |ator.{.p|ublic:..|
|00000a90| 69 6e 6c 69 6e 65 20 54 | 44 72 61 77 43 6f 6e 74 |inline T|DrawCont|
|00000aa0| 65 78 74 49 74 65 72 61 | 74 6f 72 28 76 6f 69 64 |extItera|tor(void|
|00000ab0| 29 3b 0d 09 69 6e 6c 69 | 6e 65 20 54 44 72 61 77 |);..inli|ne TDraw|
|00000ac0| 43 6f 6e 74 65 78 74 49 | 74 65 72 61 74 6f 72 28 |ContextI|terator(|
|00000ad0| 63 6f 6e 73 74 20 43 52 | 65 63 74 26 20 61 72 65 |const CR|ect& are|
|00000ae0| 61 29 3b 0d 09 69 6e 6c | 69 6e 65 20 54 44 72 61 |a);..inl|ine TDra|
|00000af0| 77 43 6f 6e 74 65 78 74 | 49 74 65 72 61 74 6f 72 |wContext|Iterator|
|00000b00| 28 47 72 61 66 50 74 72 | 20 70 6f 72 74 2c 20 63 |(GrafPtr| port, c|
|00000b10| 6f 6e 73 74 20 43 52 65 | 63 74 26 20 61 72 65 61 |onst CRe|ct& area|
|00000b20| 29 3b 0d 09 69 6e 6c 69 | 6e 65 20 7e 54 44 72 61 |);..inli|ne ~TDra|
|00000b30| 77 43 6f 6e 74 65 78 74 | 49 74 65 72 61 74 6f 72 |wContext|Iterator|
|00000b40| 28 29 3b 0d 0d 09 69 6e | 6c 69 6e 65 20 54 44 72 |();...in|line TDr|
|00000b50| 61 77 43 6f 6e 74 65 78 | 74 49 74 65 72 61 74 6f |awContex|tIterato|
|00000b60| 72 26 20 6f 70 65 72 61 | 74 6f 72 20 2b 2b 28 29 |r& opera|tor ++()|
|00000b70| 3b 0d 09 69 6e 6c 69 6e | 65 20 54 44 72 61 77 43 |;..inlin|e TDrawC|
|00000b80| 6f 6e 74 65 78 74 26 20 | 6f 70 65 72 61 74 6f 72 |ontext& |operator|
|00000b90| 20 2a 28 76 6f 69 64 29 | 3b 0d 09 69 6e 6c 69 6e | *(void)|;..inlin|
|00000ba0| 65 20 42 6f 6f 6c 65 61 | 6e 20 6f 70 65 72 61 74 |e Boolea|n operat|
|00000bb0| 6f 72 20 3d 3d 28 63 6f | 6e 73 74 20 54 44 72 61 |or ==(co|nst TDra|
|00000bc0| 77 43 6f 6e 74 65 78 74 | 49 74 65 72 61 74 6f 72 |wContext|Iterator|
|00000bd0| 26 20 6f 70 65 72 61 6e | 64 29 20 63 6f 6e 73 74 |& operan|d) const|
|00000be0| 3b 0d 09 69 6e 6c 69 6e | 65 20 42 6f 6f 6c 65 61 |;..inlin|e Boolea|
|00000bf0| 6e 20 6f 70 65 72 61 74 | 6f 72 20 21 3d 28 63 6f |n operat|or !=(co|
|00000c00| 6e 73 74 20 54 44 72 61 | 77 43 6f 6e 74 65 78 74 |nst TDra|wContext|
|00000c10| 49 74 65 72 61 74 6f 72 | 26 20 6f 70 65 72 61 6e |Iterator|& operan|
|00000c20| 64 29 20 63 6f 6e 73 74 | 3b 0d 09 69 6e 6c 69 6e |d) const|;..inlin|
|00000c30| 65 20 54 44 72 61 77 43 | 6f 6e 74 65 78 74 49 74 |e TDrawC|ontextIt|
|00000c40| 65 72 61 74 6f 72 26 20 | 65 6e 64 28 76 6f 69 64 |erator& |end(void|
|00000c50| 29 20 63 6f 6e 73 74 3b | 0d 70 72 69 76 61 74 65 |) const;|.private|
|00000c60| 3a 0d 09 47 44 48 61 6e | 64 6c 65 20 66 43 75 72 |:..GDHan|dle fCur|
|00000c70| 72 65 6e 74 44 65 76 69 | 63 65 3b 0d 09 43 52 65 |rentDevi|ce;..CRe|
|00000c80| 63 74 20 66 41 72 65 61 | 3b 0d 09 54 44 72 61 77 |ct fArea|;..TDraw|
|00000c90| 43 6f 6e 74 65 78 74 20 | 66 44 72 61 77 43 6f 6e |Context |fDrawCon|
|00000ca0| 74 65 78 74 3b 0d 7d 3b | 0d 0d 0d 69 6e 6c 69 6e |text;.};|...inlin|
|00000cb0| 65 20 54 44 72 61 77 43 | 6f 6e 74 65 78 74 49 74 |e TDrawC|ontextIt|
|00000cc0| 65 72 61 74 6f 72 26 20 | 20 54 44 72 61 77 43 6f |erator& | TDrawCo|
|00000cd0| 6e 74 65 78 74 49 74 65 | 72 61 74 6f 72 3a 3a 65 |ntextIte|rator::e|
|00000ce0| 6e 64 28 76 6f 69 64 29 | 20 63 6f 6e 73 74 0d 7b |nd(void)| const.{|
|00000cf0| 0d 09 54 44 72 61 77 43 | 6f 6e 74 65 78 74 49 74 |..TDrawC|ontextIt|
|00000d00| 65 72 61 74 6f 72 20 6e | 75 6c 6c 49 74 65 72 61 |erator n|ullItera|
|00000d10| 74 6f 72 3b 0d 09 72 65 | 74 75 72 6e 20 6e 75 6c |tor;..re|turn nul|
|00000d20| 6c 49 74 65 72 61 74 6f | 72 3b 0d 7d 0d 0d 0d 69 |lIterato|r;.}...i|
|00000d30| 6e 6c 69 6e 65 20 42 6f | 6f 6c 65 61 6e 20 54 44 |nline Bo|olean TD|
|00000d40| 72 61 77 43 6f 6e 74 65 | 78 74 49 74 65 72 61 74 |rawConte|xtIterat|
|00000d50| 6f 72 3a 3a 6f 70 65 72 | 61 74 6f 72 20 3d 3d 28 |or::oper|ator ==(|
|00000d60| 63 6f 6e 73 74 20 54 44 | 72 61 77 43 6f 6e 74 65 |const TD|rawConte|
|00000d70| 78 74 49 74 65 72 61 74 | 6f 72 26 20 6f 70 65 72 |xtIterat|or& oper|
|00000d80| 61 6e 64 29 20 63 6f 6e | 73 74 0d 7b 0d 09 72 65 |and) con|st.{..re|
|00000d90| 74 75 72 6e 20 28 66 43 | 75 72 72 65 6e 74 44 65 |turn (fC|urrentDe|
|00000da0| 76 69 63 65 20 3d 3d 20 | 6f 70 65 72 61 6e 64 2e |vice == |operand.|
|00000db0| 66 43 75 72 72 65 6e 74 | 44 65 76 69 63 65 29 3b |fCurrent|Device);|
|00000dc0| 0d 7d 0d 0d 69 6e 6c 69 | 6e 65 20 42 6f 6f 6c 65 |.}..inli|ne Boole|
|00000dd0| 61 6e 20 54 44 72 61 77 | 43 6f 6e 74 65 78 74 49 |an TDraw|ContextI|
|00000de0| 74 65 72 61 74 6f 72 3a | 3a 6f 70 65 72 61 74 6f |terator:|:operato|
|00000df0| 72 20 21 3d 28 63 6f 6e | 73 74 20 54 44 72 61 77 |r !=(con|st TDraw|
|00000e00| 43 6f 6e 74 65 78 74 49 | 74 65 72 61 74 6f 72 26 |ContextI|terator&|
|00000e10| 20 6f 70 65 72 61 6e 64 | 29 20 63 6f 6e 73 74 0d | operand|) const.|
|00000e20| 7b 0d 09 72 65 74 75 72 | 6e 20 28 66 43 75 72 72 |{..retur|n (fCurr|
|00000e30| 65 6e 74 44 65 76 69 63 | 65 20 21 3d 20 6f 70 65 |entDevic|e != ope|
|00000e40| 72 61 6e 64 2e 66 43 75 | 72 72 65 6e 74 44 65 76 |rand.fCu|rrentDev|
|00000e50| 69 63 65 29 3b 0d 7d 0d | 0d 0d 69 6e 6c 69 6e 65 |ice);.}.|..inline|
|00000e60| 20 54 44 72 61 77 43 6f | 6e 74 65 78 74 49 74 65 | TDrawCo|ntextIte|
|00000e70| 72 61 74 6f 72 3a 3a 54 | 44 72 61 77 43 6f 6e 74 |rator::T|DrawCont|
|00000e80| 65 78 74 49 74 65 72 61 | 74 6f 72 28 76 6f 69 64 |extItera|tor(void|
|00000e90| 29 0d 7b 0d 09 66 43 75 | 72 72 65 6e 74 44 65 76 |).{..fCu|rrentDev|
|00000ea0| 69 63 65 20 3d 20 4e 55 | 4c 4c 3b 0d 7d 0d 0d 0d |ice = NU|LL;.}...|
|00000eb0| 69 6e 6c 69 6e 65 20 54 | 44 72 61 77 43 6f 6e 74 |inline T|DrawCont|
|00000ec0| 65 78 74 49 74 65 72 61 | 74 6f 72 3a 3a 54 44 72 |extItera|tor::TDr|
|00000ed0| 61 77 43 6f 6e 74 65 78 | 74 49 74 65 72 61 74 6f |awContex|tIterato|
|00000ee0| 72 28 63 6f 6e 73 74 20 | 43 52 65 63 74 26 20 61 |r(const |CRect& a|
|00000ef0| 72 65 61 29 0d 7b 0d 09 | 66 43 75 72 72 65 6e 74 |rea).{..|fCurrent|
|00000f00| 44 65 76 69 63 65 20 3d | 20 47 65 74 44 65 76 69 |Device =| GetDevi|
|00000f10| 63 65 4c 69 73 74 28 29 | 3b 0d 09 66 41 72 65 61 |ceList()|;..fArea|
|00000f20| 20 3d 20 61 72 65 61 3b | 0d 09 69 66 20 28 66 44 | = area;|..if (fD|
|00000f30| 72 61 77 43 6f 6e 74 65 | 78 74 2e 4c 6f 63 6b 28 |rawConte|xt.Lock(|
|00000f40| 29 29 0d 09 7b 0d 09 09 | 66 44 72 61 77 43 6f 6e |))..{...|fDrawCon|
|00000f50| 74 65 78 74 2e 43 6f 6e | 76 65 72 74 54 6f 53 63 |text.Con|vertToSc|
|00000f60| 72 65 65 6e 28 66 41 72 | 65 61 29 3b 0d 09 09 66 |reen(fAr|ea);...f|
|00000f70| 44 72 61 77 43 6f 6e 74 | 65 78 74 2e 55 6e 6c 6f |DrawCont|ext.Unlo|
|00000f80| 63 6b 28 29 3b 0d 09 7d | 0d 09 77 68 69 6c 65 20 |ck();..}|..while |
|00000f90| 28 66 43 75 72 72 65 6e | 74 44 65 76 69 63 65 20 |(fCurren|tDevice |
|00000fa0| 21 3d 20 4e 55 4c 4c 20 | 26 26 20 21 66 41 72 65 |!= NULL |&& !fAre|
|00000fb0| 61 2e 49 6e 74 65 72 73 | 65 63 74 73 28 43 52 65 |a.Inters|ects(CRe|
|00000fc0| 63 74 28 28 2a 2a 66 43 | 75 72 72 65 6e 74 44 65 |ct((**fC|urrentDe|
|00000fd0| 76 69 63 65 29 2e 67 64 | 52 65 63 74 29 29 29 0d |vice).gd|Rect))).|
|00000fe0| 09 7b 0d 09 09 66 43 75 | 72 72 65 6e 74 44 65 76 |.{...fCu|rrentDev|
|00000ff0| 69 63 65 20 3d 20 47 65 | 74 4e 65 78 74 44 65 76 |ice = Ge|tNextDev|
|00001000| 69 63 65 28 66 43 75 72 | 72 65 6e 74 44 65 76 69 |ice(fCur|rentDevi|
|00001010| 63 65 29 3b 0d 09 7d 0d | 09 0d 09 69 66 20 28 66 |ce);..}.|...if (f|
|00001020| 43 75 72 72 65 6e 74 44 | 65 76 69 63 65 20 21 3d |CurrentD|evice !=|
|00001030| 20 4e 55 4c 4c 29 0d 09 | 7b 0d 09 09 66 44 72 61 | NULL)..|{...fDra|
|00001040| 77 43 6f 6e 74 65 78 74 | 2e 66 44 65 70 74 68 20 |wContext|.fDepth |
|00001050| 3d 20 28 2a 2a 28 2a 2a | 66 43 75 72 72 65 6e 74 |= (**(**|fCurrent|
|00001060| 44 65 76 69 63 65 29 2e | 67 64 50 4d 61 70 29 2e |Device).|gdPMap).|
|00001070| 70 69 78 65 6c 53 69 7a | 65 3b 0d 09 09 66 44 72 |pixelSiz|e;...fDr|
|00001080| 61 77 43 6f 6e 74 65 78 | 74 2e 66 49 73 43 6f 6c |awContex|t.fIsCol|
|00001090| 6f 72 20 3d 20 28 28 2a | 2a 66 43 75 72 72 65 6e |or = ((*|*fCurren|
|000010a0| 74 44 65 76 69 63 65 29 | 2e 67 64 46 6c 61 67 73 |tDevice)|.gdFlags|
|000010b0| 20 26 20 31 29 20 21 3d | 20 30 3b 0d 09 7d 0d 7d | & 1) !=| 0;..}.}|
|000010c0| 0d 0d 69 6e 6c 69 6e 65 | 20 54 44 72 61 77 43 6f |..inline| TDrawCo|
|000010d0| 6e 74 65 78 74 49 74 65 | 72 61 74 6f 72 3a 3a 54 |ntextIte|rator::T|
|000010e0| 44 72 61 77 43 6f 6e 74 | 65 78 74 49 74 65 72 61 |DrawCont|extItera|
|000010f0| 74 6f 72 28 47 72 61 66 | 50 74 72 20 70 6f 72 74 |tor(Graf|Ptr port|
|00001100| 2c 20 63 6f 6e 73 74 20 | 43 52 65 63 74 26 20 61 |, const |CRect& a|
|00001110| 72 65 61 29 20 3a 0d 09 | 66 44 72 61 77 43 6f 6e |rea) :..|fDrawCon|
|00001120| 74 65 78 74 28 70 6f 72 | 74 29 0d 7b 0d 09 66 43 |text(por|t).{..fC|
|00001130| 75 72 72 65 6e 74 44 65 | 76 69 63 65 20 3d 20 47 |urrentDe|vice = G|
|00001140| 65 74 44 65 76 69 63 65 | 4c 69 73 74 28 29 3b 0d |etDevice|List();.|
|00001150| 09 66 41 72 65 61 20 3d | 20 61 72 65 61 3b 0d 09 |.fArea =| area;..|
|00001160| 69 66 20 28 66 44 72 61 | 77 43 6f 6e 74 65 78 74 |if (fDra|wContext|
|00001170| 2e 4c 6f 63 6b 28 29 29 | 0d 09 7b 0d 09 09 66 44 |.Lock())|..{...fD|
|00001180| 72 61 77 43 6f 6e 74 65 | 78 74 2e 43 6f 6e 76 65 |rawConte|xt.Conve|
|00001190| 72 74 54 6f 53 63 72 65 | 65 6e 28 66 41 72 65 61 |rtToScre|en(fArea|
|000011a0| 29 3b 0d 09 09 66 44 72 | 61 77 43 6f 6e 74 65 78 |);...fDr|awContex|
|000011b0| 74 2e 55 6e 6c 6f 63 6b | 28 29 3b 0d 09 7d 0d 09 |t.Unlock|();..}..|
|000011c0| 0d 09 77 68 69 6c 65 20 | 28 66 43 75 72 72 65 6e |..while |(fCurren|
|000011d0| 74 44 65 76 69 63 65 20 | 21 3d 20 4e 55 4c 4c 20 |tDevice |!= NULL |
|000011e0| 26 26 20 21 66 41 72 65 | 61 2e 49 6e 74 65 72 73 |&& !fAre|a.Inters|
|000011f0| 65 63 74 73 28 43 52 65 | 63 74 28 28 2a 2a 66 43 |ects(CRe|ct((**fC|
|00001200| 75 72 72 65 6e 74 44 65 | 76 69 63 65 29 2e 67 64 |urrentDe|vice).gd|
|00001210| 52 65 63 74 29 29 29 0d | 09 7b 0d 09 09 66 43 75 |Rect))).|.{...fCu|
|00001220| 72 72 65 6e 74 44 65 76 | 69 63 65 20 3d 20 47 65 |rrentDev|ice = Ge|
|00001230| 74 4e 65 78 74 44 65 76 | 69 63 65 28 66 43 75 72 |tNextDev|ice(fCur|
|00001240| 72 65 6e 74 44 65 76 69 | 63 65 29 3b 0d 09 7d 0d |rentDevi|ce);..}.|
|00001250| 09 0d 09 69 66 20 28 66 | 43 75 72 72 65 6e 74 44 |...if (f|CurrentD|
|00001260| 65 76 69 63 65 20 21 3d | 20 4e 55 4c 4c 29 0d 09 |evice !=| NULL)..|
|00001270| 7b 0d 09 09 66 44 72 61 | 77 43 6f 6e 74 65 78 74 |{...fDra|wContext|
|00001280| 2e 66 44 65 70 74 68 20 | 3d 20 28 2a 2a 28 2a 2a |.fDepth |= (**(**|
|00001290| 66 43 75 72 72 65 6e 74 | 44 65 76 69 63 65 29 2e |fCurrent|Device).|
|000012a0| 67 64 50 4d 61 70 29 2e | 70 69 78 65 6c 53 69 7a |gdPMap).|pixelSiz|
|000012b0| 65 3b 0d 09 09 66 44 72 | 61 77 43 6f 6e 74 65 78 |e;...fDr|awContex|
|000012c0| 74 2e 66 49 73 43 6f 6c | 6f 72 20 3d 20 28 28 2a |t.fIsCol|or = ((*|
|000012d0| 2a 66 43 75 72 72 65 6e | 74 44 65 76 69 63 65 29 |*fCurren|tDevice)|
|000012e0| 2e 67 64 46 6c 61 67 73 | 20 26 20 31 29 20 21 3d |.gdFlags| & 1) !=|
|000012f0| 20 30 3b 0d 09 7d 0d 7d | 0d 0d 0d 0d 69 6e 6c 69 | 0;..}.}|....inli|
|00001300| 6e 65 20 54 44 72 61 77 | 43 6f 6e 74 65 78 74 49 |ne TDraw|ContextI|
|00001310| 74 65 72 61 74 6f 72 3a | 3a 7e 54 44 72 61 77 43 |terator:|:~TDrawC|
|00001320| 6f 6e 74 65 78 74 49 74 | 65 72 61 74 6f 72 28 29 |ontextIt|erator()|
|00001330| 0d 7b 0d 7d 0d 0d 0d 69 | 6e 6c 69 6e 65 20 54 44 |.{.}...i|nline TD|
|00001340| 72 61 77 43 6f 6e 74 65 | 78 74 49 74 65 72 61 74 |rawConte|xtIterat|
|00001350| 6f 72 26 20 54 44 72 61 | 77 43 6f 6e 74 65 78 74 |or& TDra|wContext|
|00001360| 49 74 65 72 61 74 6f 72 | 3a 3a 6f 70 65 72 61 74 |Iterator|::operat|
|00001370| 6f 72 20 2b 2b 28 29 0d | 7b 0d 09 0d 09 2f 2f 20 |or ++().|{....// |
|00001380| 4c 6f 6f 6b 20 61 74 20 | 74 68 65 20 6e 65 78 74 |Look at |the next|
|00001390| 20 64 65 76 69 63 65 0d | 09 64 6f 0d 09 7b 0d 09 | device.|.do..{..|
|000013a0| 09 66 43 75 72 72 65 6e | 74 44 65 76 69 63 65 20 |.fCurren|tDevice |
|000013b0| 3d 20 47 65 74 4e 65 78 | 74 44 65 76 69 63 65 28 |= GetNex|tDevice(|
|000013c0| 66 43 75 72 72 65 6e 74 | 44 65 76 69 63 65 29 3b |fCurrent|Device);|
|000013d0| 0d 09 7d 20 77 68 69 6c | 65 20 28 66 43 75 72 72 |..} whil|e (fCurr|
|000013e0| 65 6e 74 44 65 76 69 63 | 65 20 21 3d 20 4e 55 4c |entDevic|e != NUL|
|000013f0| 4c 20 26 26 20 21 66 41 | 72 65 61 2e 49 6e 74 65 |L && !fA|rea.Inte|
|00001400| 72 73 65 63 74 73 28 43 | 52 65 63 74 28 28 2a 2a |rsects(C|Rect((**|
|00001410| 66 43 75 72 72 65 6e 74 | 44 65 76 69 63 65 29 2e |fCurrent|Device).|
|00001420| 67 64 52 65 63 74 29 29 | 29 3b 0d 09 0d 09 69 66 |gdRect))|);....if|
|00001430| 20 28 66 43 75 72 72 65 | 6e 74 44 65 76 69 63 65 | (fCurre|ntDevice|
|00001440| 20 21 3d 20 4e 55 4c 4c | 29 0d 09 7b 0d 09 09 66 | != NULL|)..{...f|
|00001450| 44 72 61 77 43 6f 6e 74 | 65 78 74 2e 66 44 65 70 |DrawCont|ext.fDep|
|00001460| 74 68 20 3d 20 28 2a 2a | 28 2a 2a 66 43 75 72 72 |th = (**|(**fCurr|
|00001470| 65 6e 74 44 65 76 69 63 | 65 29 2e 67 64 50 4d 61 |entDevic|e).gdPMa|
|00001480| 70 29 2e 70 69 78 65 6c | 53 69 7a 65 3b 0d 09 09 |p).pixel|Size;...|
|00001490| 66 44 72 61 77 43 6f 6e | 74 65 78 74 2e 66 49 73 |fDrawCon|text.fIs|
|000014a0| 43 6f 6c 6f 72 20 3d 20 | 28 28 2a 2a 66 43 75 72 |Color = |((**fCur|
|000014b0| 72 65 6e 74 44 65 76 69 | 63 65 29 2e 67 64 46 6c |rentDevi|ce).gdFl|
|000014c0| 61 67 73 20 26 20 31 29 | 20 21 3d 20 30 3b 0d 09 |ags & 1)| != 0;..|
|000014d0| 7d 0d 09 72 65 74 75 72 | 6e 20 2a 74 68 69 73 3b |}..retur|n *this;|
|000014e0| 0d 7d 0d 0d 0d 69 6e 6c | 69 6e 65 20 54 44 72 61 |.}...inl|ine TDra|
|000014f0| 77 43 6f 6e 74 65 78 74 | 26 20 54 44 72 61 77 43 |wContext|& TDrawC|
|00001500| 6f 6e 74 65 78 74 49 74 | 65 72 61 74 6f 72 3a 3a |ontextIt|erator::|
|00001510| 6f 70 65 72 61 74 6f 72 | 20 2a 28 76 6f 69 64 29 |operator| *(void)|
|00001520| 0d 7b 0d 09 72 65 74 75 | 72 6e 20 66 44 72 61 77 |.{..retu|rn fDraw|
|00001530| 43 6f 6e 74 65 78 74 3b | 0d 7d 0d 0d 0d 0d 2f 2f |Context;|.}....//|
|00001540| 0d 2f 2f 09 49 6e 6c 69 | 6e 65 73 20 66 6f 72 20 |.//.Inli|nes for |
|00001550| 54 44 72 61 77 43 6f 6e | 74 65 78 74 0d 2f 2f 0d |TDrawCon|text.//.|
|00001560| 0d 69 6e 6c 69 6e 65 20 | 54 44 72 61 77 43 6f 6e |.inline |TDrawCon|
|00001570| 74 65 78 74 3a 3a 54 44 | 72 61 77 43 6f 6e 74 65 |text::TD|rawConte|
|00001580| 78 74 28 76 6f 69 64 29 | 20 3a 0d 09 66 53 61 76 |xt(void)| :..fSav|
|00001590| 65 50 6f 72 74 28 4e 55 | 4c 4c 29 2c 0d 09 66 4c |ePort(NU|LL),..fL|
|000015a0| 6f 63 6b 43 6f 75 6e 74 | 28 30 29 0d 7b 0d 09 47 |ockCount|(0).{..G|
|000015b0| 65 74 50 6f 72 74 28 26 | 66 50 6f 72 74 29 3b 0d |etPort(&|fPort);.|
|000015c0| 09 66 44 65 70 74 68 20 | 3d 20 31 3b 0d 09 66 49 |.fDepth |= 1;..fI|
|000015d0| 73 43 6f 6c 6f 72 20 3d | 20 66 61 6c 73 65 3b 0d |sColor =| false;.|
|000015e0| 7d 0d 0d 69 6e 6c 69 6e | 65 20 54 44 72 61 77 43 |}..inlin|e TDrawC|
|000015f0| 6f 6e 74 65 78 74 3a 3a | 54 44 72 61 77 43 6f 6e |ontext::|TDrawCon|
|00001600| 74 65 78 74 28 47 72 61 | 66 50 74 72 20 67 72 61 |text(Gra|fPtr gra|
|00001610| 66 50 74 72 2c 20 55 49 | 6e 74 31 36 20 64 65 70 |fPtr, UI|nt16 dep|
|00001620| 74 68 2c 20 42 6f 6f 6c | 65 61 6e 20 69 6e 43 6f |th, Bool|ean inCo|
|00001630| 6c 6f 72 29 20 3a 0d 09 | 66 53 61 76 65 50 6f 72 |lor) :..|fSavePor|
|00001640| 74 28 4e 55 4c 4c 29 2c | 0d 09 66 4c 6f 63 6b 43 |t(NULL),|..fLockC|
|00001650| 6f 75 6e 74 28 30 29 0d | 7b 0d 09 66 50 6f 72 74 |ount(0).|{..fPort|
|00001660| 20 3d 20 67 72 61 66 50 | 74 72 3b 0d 09 66 44 65 | = grafP|tr;..fDe|
|00001670| 70 74 68 20 3d 20 64 65 | 70 74 68 3b 0d 09 66 49 |pth = de|pth;..fI|
|00001680| 73 43 6f 6c 6f 72 20 3d | 20 69 6e 43 6f 6c 6f 72 |sColor =| inColor|
|00001690| 3b 0d 7d 0d 0d 69 6e 6c | 69 6e 65 20 54 44 72 61 |;.}..inl|ine TDra|
|000016a0| 77 43 6f 6e 74 65 78 74 | 3a 3a 7e 54 44 72 61 77 |wContext|::~TDraw|
|000016b0| 43 6f 6e 74 65 78 74 28 | 29 0d 7b 0d 09 61 73 73 |Context(|).{..ass|
|000016c0| 65 72 74 28 66 4c 6f 63 | 6b 43 6f 75 6e 74 20 3d |ert(fLoc|kCount =|
|000016d0| 3d 20 30 29 3b 0d 7d 0d | 0d 69 6e 6c 69 6e 65 20 |= 0);.}.|.inline |
|000016e0| 43 52 65 63 74 20 54 44 | 72 61 77 43 6f 6e 74 65 |CRect TD|rawConte|
|000016f0| 78 74 3a 3a 42 6f 75 6e | 64 73 28 76 6f 69 64 29 |xt::Boun|ds(void)|
|00001700| 20 63 6f 6e 73 74 0d 7b | 0d 09 43 52 65 63 74 20 | const.{|..CRect |
|00001710| 72 65 73 75 6c 74 28 66 | 50 6f 72 74 2d 3e 70 6f |result(f|Port->po|
|00001720| 72 74 52 65 63 74 29 3b | 0d 09 43 6f 6e 76 65 72 |rtRect);|..Conver|
|00001730| 74 54 6f 53 63 72 65 65 | 6e 28 72 65 73 75 6c 74 |tToScree|n(result|
|00001740| 29 3b 0d 09 72 65 74 75 | 72 6e 20 72 65 73 75 6c |);..retu|rn resul|
|00001750| 74 3b 0d 7d 0d 0d 69 6e | 6c 69 6e 65 20 42 6f 6f |t;.}..in|line Boo|
|00001760| 6c 65 61 6e 20 54 44 72 | 61 77 43 6f 6e 74 65 78 |lean TDr|awContex|
|00001770| 74 3a 3a 49 73 43 6f 6c | 6f 72 28 76 6f 69 64 29 |t::IsCol|or(void)|
|00001780| 20 63 6f 6e 73 74 0d 7b | 0d 09 72 65 74 75 72 6e | const.{|..return|
|00001790| 20 66 49 73 43 6f 6c 6f | 72 3b 0d 7d 0d 0d 69 6e | fIsColo|r;.}..in|
|000017a0| 6c 69 6e 65 20 42 6f 6f | 6c 65 61 6e 20 54 44 72 |line Boo|lean TDr|
|000017b0| 61 77 43 6f 6e 74 65 78 | 74 3a 3a 49 73 43 6f 6c |awContex|t::IsCol|
|000017c0| 6f 72 50 6f 72 74 28 76 | 6f 69 64 29 20 63 6f 6e |orPort(v|oid) con|
|000017d0| 73 74 0d 7b 0d 09 72 65 | 74 75 72 6e 20 28 66 50 |st.{..re|turn (fP|
|000017e0| 6f 72 74 2d 3e 70 6f 72 | 74 42 69 74 73 2e 72 6f |ort->por|tBits.ro|
|000017f0| 77 42 79 74 65 73 20 26 | 20 30 78 43 30 30 30 29 |wBytes &| 0xC000)|
|00001800| 20 3d 3d 20 30 78 43 30 | 30 30 3b 0d 7d 0d 0d 69 | == 0xC0|00;.}..i|
|00001810| 6e 6c 69 6e 65 20 55 49 | 6e 74 31 36 20 54 44 72 |nline UI|nt16 TDr|
|00001820| 61 77 43 6f 6e 74 65 78 | 74 3a 3a 47 65 74 44 65 |awContex|t::GetDe|
|00001830| 70 74 68 28 76 6f 69 64 | 29 20 63 6f 6e 73 74 0d |pth(void|) const.|
|00001840| 7b 0d 09 72 65 74 75 72 | 6e 20 66 44 65 70 74 68 |{..retur|n fDepth|
|00001850| 3b 0d 7d 0d 0d 69 6e 6c | 69 6e 65 20 76 6f 69 64 |;.}..inl|ine void|
|00001860| 20 54 44 72 61 77 43 6f | 6e 74 65 78 74 3a 3a 53 | TDrawCo|ntext::S|
|00001870| 65 74 50 65 6e 53 69 7a | 65 28 47 72 61 70 68 69 |etPenSiz|e(Graphi|
|00001880| 63 61 6c 55 6e 69 74 20 | 73 69 7a 65 29 20 63 6f |calUnit |size) co|
|00001890| 6e 73 74 0d 7b 0d 09 61 | 73 73 65 72 74 28 66 4c |nst.{..a|ssert(fL|
|000018a0| 6f 63 6b 43 6f 75 6e 74 | 20 3e 20 30 29 3b 0d 0d |ockCount| > 0);..|
|000018b0| 09 3a 3a 50 65 6e 53 69 | 7a 65 28 73 69 7a 65 2c |.::PenSi|ze(size,|
|000018c0| 20 73 69 7a 65 29 3b 0d | 7d 0d 0d 69 6e 6c 69 6e | size);.|}..inlin|
|000018d0| 65 20 76 6f 69 64 20 54 | 44 72 61 77 43 6f 6e 74 |e void T|DrawCont|
|000018e0| 65 78 74 3a 3a 43 6f 6e | 76 65 72 74 54 6f 53 63 |ext::Con|vertToSc|
|000018f0| 72 65 65 6e 28 43 50 6f | 69 6e 74 26 20 70 6f 69 |reen(CPo|int& poi|
|00001900| 6e 74 29 20 63 6f 6e 73 | 74 0d 7b 0d 09 61 73 73 |nt) cons|t.{..ass|
|00001910| 65 72 74 28 66 4c 6f 63 | 6b 43 6f 75 6e 74 20 3e |ert(fLoc|kCount >|
|00001920| 20 30 29 3b 0d 0d 09 3a | 3a 4c 6f 63 61 6c 54 6f | 0);...:|:LocalTo|
|00001930| 47 6c 6f 62 61 6c 28 70 | 6f 69 6e 74 29 3b 0d 7d |Global(p|oint);.}|
|00001940| 0d 0d 69 6e 6c 69 6e 65 | 20 76 6f 69 64 20 54 44 |..inline| void TD|
|00001950| 72 61 77 43 6f 6e 74 65 | 78 74 3a 3a 43 6f 6e 76 |rawConte|xt::Conv|
|00001960| 65 72 74 46 72 6f 6d 53 | 63 72 65 65 6e 28 43 50 |ertFromS|creen(CP|
|00001970| 6f 69 6e 74 26 20 70 6f | 69 6e 74 29 20 63 6f 6e |oint& po|int) con|
|00001980| 73 74 0d 7b 0d 09 61 73 | 73 65 72 74 28 66 4c 6f |st.{..as|sert(fLo|
|00001990| 63 6b 43 6f 75 6e 74 20 | 3e 20 30 29 3b 0d 0d 09 |ckCount |> 0);...|
|000019a0| 3a 3a 47 6c 6f 62 61 6c | 54 6f 4c 6f 63 61 6c 28 |::Global|ToLocal(|
|000019b0| 70 6f 69 6e 74 29 3b 0d | 7d 0d 0d 69 6e 6c 69 6e |point);.|}..inlin|
|000019c0| 65 20 76 6f 69 64 20 54 | 44 72 61 77 43 6f 6e 74 |e void T|DrawCont|
|000019d0| 65 78 74 3a 3a 43 6f 6e | 76 65 72 74 54 6f 53 63 |ext::Con|vertToSc|
|000019e0| 72 65 65 6e 28 43 52 65 | 63 74 26 20 72 65 63 74 |reen(CRe|ct& rect|
|000019f0| 29 20 63 6f 6e 73 74 0d | 7b 0d 09 61 73 73 65 72 |) const.|{..asser|
|00001a00| 74 28 66 4c 6f 63 6b 43 | 6f 75 6e 74 20 3e 20 30 |t(fLockC|ount > 0|
|00001a10| 29 3b 0d 0d 09 43 50 6f | 69 6e 74 20 74 65 6d 70 |);...CPo|int temp|
|00001a20| 20 3d 20 72 65 63 74 2e | 4c 65 66 74 54 6f 70 28 | = rect.|LeftTop(|
|00001a30| 29 3b 0d 09 3a 3a 4c 6f | 63 61 6c 54 6f 47 6c 6f |);..::Lo|calToGlo|
|00001a40| 62 61 6c 28 74 65 6d 70 | 29 3b 0d 09 72 65 63 74 |bal(temp|);..rect|
|00001a50| 2e 53 65 74 4c 65 66 74 | 54 6f 70 28 74 65 6d 70 |.SetLeft|Top(temp|
|00001a60| 29 3b 0d 09 74 65 6d 70 | 20 3d 20 72 65 63 74 2e |);..temp| = rect.|
|00001a70| 52 69 67 68 74 42 6f 74 | 74 6f 6d 28 29 3b 0d 09 |RightBot|tom();..|
|00001a80| 3a 3a 4c 6f 63 61 6c 54 | 6f 47 6c 6f 62 61 6c 28 |::LocalT|oGlobal(|
|00001a90| 74 65 6d 70 29 3b 0d 09 | 72 65 63 74 2e 53 65 74 |temp);..|rect.Set|
|00001aa0| 52 69 67 68 74 42 6f 74 | 74 6f 6d 28 74 65 6d 70 |RightBot|tom(temp|
|00001ab0| 29 3b 0d 7d 0d 0d 0d 69 | 6e 6c 69 6e 65 20 76 6f |);.}...i|nline vo|
|00001ac0| 69 64 20 54 44 72 61 77 | 43 6f 6e 74 65 78 74 3a |id TDraw|Context:|
|00001ad0| 3a 43 6f 6e 76 65 72 74 | 46 72 6f 6d 53 63 72 65 |:Convert|FromScre|
|00001ae0| 65 6e 28 43 52 65 63 74 | 26 20 72 65 63 74 29 20 |en(CRect|& rect) |
|00001af0| 63 6f 6e 73 74 0d 7b 0d | 09 61 73 73 65 72 74 28 |const.{.|.assert(|
|00001b00| 66 4c 6f 63 6b 43 6f 75 | 6e 74 20 3e 20 30 29 3b |fLockCou|nt > 0);|
|00001b10| 0d 0d 09 2f 2f 20 3f 3f | 3f 20 44 6f 65 73 6e 27 |...// ??|? Doesn'|
|00001b20| 74 20 77 6f 72 6b 20 4c | 65 66 54 6f 70 28 29 20 |t work L|efTop() |
|00001b30| 72 65 74 75 72 6e 73 20 | 61 20 63 6f 6e 73 20 53 |returns |a cons S|
|00001b40| 65 65 20 43 6f 6e 76 65 | 72 54 6f 53 63 72 65 65 |ee Conve|rToScree|
|00001b50| 6e 0d 09 3a 3a 47 6c 6f | 62 61 6c 54 6f 4c 6f 63 |n..::Glo|balToLoc|
|00001b60| 61 6c 28 72 65 63 74 2e | 4c 65 66 74 54 6f 70 28 |al(rect.|LeftTop(|
|00001b70| 29 29 3b 0d 09 3a 3a 47 | 6c 6f 62 61 6c 54 6f 4c |));..::G|lobalToL|
|00001b80| 6f 63 61 6c 28 72 65 63 | 74 2e 52 69 67 68 74 42 |ocal(rec|t.RightB|
|00001b90| 6f 74 74 6f 6d 28 29 29 | 3b 0d 7d 0d 0d 0d 2f 2f |ottom())|;.}...//|
|00001ba0| 0d 2f 2f 09 43 43 6c 69 | 70 20 63 6c 61 73 73 0d |.//.CCli|p class.|
|00001bb0| 2f 2f 0d 2f 2f 20 43 6c | 61 73 73 20 74 6f 20 73 |//.// Cl|ass to s|
|00001bc0| 61 76 65 2c 20 72 65 73 | 74 6f 72 65 20 61 6e 64 |ave, res|tore and|
|00001bd0| 20 63 68 61 6e 67 65 20 | 74 68 65 20 63 6c 69 70 | change |the clip|
|00001be0| 70 69 6e 67 20 72 65 67 | 69 6f 6e 0d 0d 63 6c 61 |ping reg|ion..cla|
|00001bf0| 73 73 20 43 43 6c 69 70 | 0d 7b 0d 70 75 62 6c 69 |ss CClip|.{.publi|
|00001c00| 63 3a 0d 09 69 6e 6c 69 | 6e 65 20 43 43 6c 69 70 |c:..inli|ne CClip|
|00001c10| 28 29 3b 0d 09 69 6e 6c | 69 6e 65 20 7e 43 43 6c |();..inl|ine ~CCl|
|00001c20| 69 70 28 29 3b 0d 09 69 | 6e 6c 69 6e 65 20 76 6f |ip();..i|nline vo|
|00001c30| 69 64 20 53 61 76 65 28 | 29 3b 0d 09 69 6e 6c 69 |id Save(|);..inli|
|00001c40| 6e 65 20 76 6f 69 64 20 | 52 65 73 74 6f 72 65 28 |ne void |Restore(|
|00001c50| 29 3b 0d 09 69 6e 6c 69 | 6e 65 20 76 6f 69 64 20 |);..inli|ne void |
|00001c60| 53 65 74 28 52 67 6e 48 | 61 6e 64 6c 65 20 63 6c |Set(RgnH|andle cl|
|00001c70| 69 70 52 67 6e 29 3b 0d | 09 69 6e 6c 69 6e 65 20 |ipRgn);.|.inline |
|00001c80| 76 6f 69 64 20 53 65 74 | 28 63 6f 6e 73 74 20 52 |void Set|(const R|
|00001c90| 65 63 74 26 20 63 6c 69 | 70 52 65 63 74 29 3b 0d |ect& cli|pRect);.|
|00001ca0| 09 69 6e 6c 69 6e 65 20 | 76 6f 69 64 20 53 65 74 |.inline |void Set|
|00001cb0| 28 63 6f 6e 73 74 20 43 | 52 65 63 74 26 20 63 6c |(const C|Rect& cl|
|00001cc0| 69 70 52 65 63 74 29 3b | 0d 0d 70 72 69 76 61 74 |ipRect);|..privat|
|00001cd0| 65 3a 0d 09 52 67 6e 48 | 61 6e 64 6c 65 20 66 43 |e:..RgnH|andle fC|
|00001ce0| 6c 69 70 52 67 6e 3b 0d | 23 69 66 6e 64 65 66 20 |lipRgn;.|#ifndef |
|00001cf0| 4e 44 45 42 55 47 0d 09 | 73 68 6f 72 74 20 66 53 |NDEBUG..|short fS|
|00001d00| 61 76 65 43 6f 75 6e 74 | 3b 0d 23 65 6e 64 69 66 |aveCount|;.#endif|
|00001d10| 0d 0d 7d 3b 0d 0d 2f 2f | 0d 2f 2f 20 43 54 65 6d |..};..//|.// CTem|
|00001d20| 70 52 67 6e 20 63 6c 61 | 73 73 0d 2f 2f 0d 2f 2f |pRgn cla|ss.//.//|
|00001d30| 20 43 6c 61 73 73 20 6d | 61 6e 61 67 69 6e 67 20 | Class m|anaging |
|00001d40| 61 20 74 65 6d 70 6f 72 | 61 72 79 20 72 65 67 69 |a tempor|ary regi|
|00001d50| 6f 6e 2e 20 55 73 65 66 | 75 6c 20 74 6f 20 70 61 |on. Usef|ul to pa|
|00001d60| 73 73 20 0d 2f 2f 20 72 | 65 63 74 73 20 74 6f 20 |ss .// r|ects to |
|00001d70| 72 6f 75 74 69 6e 65 73 | 20 72 65 71 75 69 72 65 |routines| require|
|00001d80| 20 72 65 67 69 6f 6e 73 | 2e 0d 2f 2f 20 45 78 61 | regions|..// Exa|
|00001d90| 6d 70 6c 65 3a 20 0d 2f | 2f 09 09 09 09 43 54 65 |mple: ./|/....CTe|
|00001da0| 6d 70 52 67 6e 20 61 52 | 67 6e 28 72 29 3b 0d 2f |mpRgn aR|gn(r);./|
|00001db0| 2f 09 09 09 09 53 65 74 | 43 6c 69 70 28 61 52 67 |/....Set|Clip(aRg|
|00001dc0| 6e 29 3b 0d 0d 63 6c 61 | 73 73 20 43 54 65 6d 70 |n);..cla|ss CTemp|
|00001dd0| 52 67 6e 0d 7b 0d 70 75 | 62 6c 69 63 3a 0d 2f 2f |Rgn.{.pu|blic:.//|
|00001de0| 20 63 6f 6e 73 74 72 75 | 63 74 6f 72 73 0d 09 69 | constru|ctors..i|
|00001df0| 6e 6c 69 6e 65 20 43 54 | 65 6d 70 52 67 6e 28 29 |nline CT|empRgn()|
|00001e00| 3b 0d 09 69 6e 6c 69 6e | 65 20 43 54 65 6d 70 52 |;..inlin|e CTempR|
|00001e10| 67 6e 28 63 6f 6e 73 74 | 20 52 65 63 74 26 20 61 |gn(const| Rect& a|
|00001e20| 72 65 61 29 3b 0d 09 69 | 6e 6c 69 6e 65 20 43 54 |rea);..i|nline CT|
|00001e30| 65 6d 70 52 67 6e 28 63 | 6f 6e 73 74 20 43 54 65 |empRgn(c|onst CTe|
|00001e40| 6d 70 52 67 6e 26 20 72 | 67 6e 29 3b 20 2f 2f 20 |mpRgn& r|gn); // |
|00001e50| 63 6f 70 79 20 63 6f 6e | 73 74 72 75 63 74 6f 72 |copy con|structor|
|00001e60| 0d 09 69 6e 6c 69 6e 65 | 20 43 54 65 6d 70 52 67 |..inline| CTempRg|
|00001e70| 6e 28 63 6f 6e 73 74 20 | 52 67 6e 48 61 6e 64 6c |n(const |RgnHandl|
|00001e80| 65 20 72 67 6e 29 3b 09 | 09 0d 0d 2f 2f 20 64 65 |e rgn);.|...// de|
|00001e90| 73 74 72 75 63 74 6f 72 | 0d 09 69 6e 6c 69 6e 65 |structor|..inline|
|00001ea0| 20 7e 43 54 65 6d 70 52 | 67 6e 28 76 6f 69 64 29 | ~CTempR|gn(void)|
|00001eb0| 3b 09 09 0d 0d 2f 2f 20 | 6f 70 65 72 61 74 6f 72 |;....// |operator|
|00001ec0| 73 0d 09 69 6e 6c 69 6e | 65 20 6f 70 65 72 61 74 |s..inlin|e operat|
|00001ed0| 6f 72 20 52 67 6e 48 61 | 6e 64 6c 65 28 76 6f 69 |or RgnHa|ndle(voi|
|00001ee0| 64 29 3b 09 09 0d 0d 2f | 2f 20 6d 6f 64 69 66 69 |d);..../|/ modifi|
|00001ef0| 65 72 73 0d 09 69 6e 6c | 69 6e 65 20 76 6f 69 64 |ers..inl|ine void|
|00001f00| 20 53 65 74 28 63 6f 6e | 73 74 20 43 52 65 63 74 | Set(con|st CRect|
|00001f10| 26 20 62 6f 75 6e 64 73 | 29 3b 0d 09 69 6e 6c 69 |& bounds|);..inli|
|00001f20| 6e 65 20 76 6f 69 64 20 | 4c 6f 63 61 6c 54 6f 47 |ne void |LocalToG|
|00001f30| 6c 6f 62 61 6c 28 76 6f | 69 64 29 3b 09 09 0d 20 |lobal(vo|id);... |
|00001f40| 09 69 6e 6c 69 6e 65 20 | 76 6f 69 64 20 47 6c 6f |.inline |void Glo|
|00001f50| 62 61 6c 54 6f 4c 6f 63 | 61 6c 28 76 6f 69 64 29 |balToLoc|al(void)|
|00001f60| 3b 0d 09 0d 2f 2f 20 73 | 65 6c 65 63 74 6f 72 73 |;...// s|electors|
|00001f70| 0d 09 69 6e 6c 69 6e 65 | 20 43 52 65 63 74 20 42 |..inline| CRect B|
|00001f80| 6f 75 6e 64 73 28 76 6f | 69 64 29 20 63 6f 6e 73 |ounds(vo|id) cons|
|00001f90| 74 3b 0d 0d 70 72 69 76 | 61 74 65 3a 0d 2f 2f 20 |t;..priv|ate:.// |
|00001fa0| 6d 65 6d 62 65 72 20 6f | 62 6a 65 63 74 73 0d 09 |member o|bjects..|
|00001fb0| 52 67 6e 48 61 6e 64 6c | 65 20 66 54 65 6d 70 52 |RgnHandl|e fTempR|
|00001fc0| 67 6e 3b 09 09 0d 7d 3b | 0d 0d 0d 2f 2f 0d 2f 2f |gn;...};|...//.//|
|00001fd0| 09 49 6e 6c 69 6e 65 73 | 20 66 6f 72 20 43 43 6c |.Inlines| for CCl|
|00001fe0| 69 70 0d 2f 2f 0d 0d 69 | 6e 6c 69 6e 65 20 43 43 |ip.//..i|nline CC|
|00001ff0| 6c 69 70 3a 3a 43 43 6c | 69 70 28 29 0d 7b 0d 09 |lip::CCl|ip().{..|
|00002000| 66 43 6c 69 70 52 67 6e | 20 3d 20 4e 55 4c 4c 3b |fClipRgn| = NULL;|
|00002010| 0d 23 69 66 6e 64 65 66 | 20 4e 44 45 42 55 47 0d |.#ifndef| NDEBUG.|
|00002020| 09 66 53 61 76 65 43 6f | 75 6e 74 20 3d 20 30 3b |.fSaveCo|unt = 0;|
|00002030| 0d 23 65 6e 64 69 66 0d | 0d 7d 0d 0d 0d 69 6e 6c |.#endif.|.}...inl|
|00002040| 69 6e 65 20 43 43 6c 69 | 70 3a 3a 7e 43 43 6c 69 |ine CCli|p::~CCli|
|00002050| 70 28 29 0d 7b 0d 09 69 | 66 20 28 66 43 6c 69 70 |p().{..i|f (fClip|
|00002060| 52 67 6e 20 21 3d 20 4e | 55 4c 4c 29 0d 09 09 44 |Rgn != N|ULL)...D|
|00002070| 69 73 70 6f 73 65 52 67 | 6e 28 66 43 6c 69 70 52 |isposeRg|n(fClipR|
|00002080| 67 6e 29 3b 0d 23 69 66 | 6e 64 65 66 20 4e 44 45 |gn);.#if|ndef NDE|
|00002090| 42 55 47 0d 09 61 73 73 | 65 72 74 28 66 53 61 76 |BUG..ass|ert(fSav|
|000020a0| 65 43 6f 75 6e 74 20 3d | 3d 20 30 29 3b 0d 23 65 |eCount =|= 0);.#e|
|000020b0| 6e 64 69 66 0d 0d 7d 0d | 0d 0d 69 6e 6c 69 6e 65 |ndif..}.|..inline|
|000020c0| 20 76 6f 69 64 20 43 43 | 6c 69 70 3a 3a 53 65 74 | void CC|lip::Set|
|000020d0| 28 52 67 6e 48 61 6e 64 | 6c 65 20 63 6c 69 70 52 |(RgnHand|le clipR|
|000020e0| 67 6e 29 0d 7b 0d 09 53 | 65 74 43 6c 69 70 28 63 |gn).{..S|etClip(c|
|000020f0| 6c 69 70 52 67 6e 29 3b | 0d 7d 0d 0d 0d 0d 69 6e |lipRgn);|.}....in|
|00002100| 6c 69 6e 65 20 76 6f 69 | 64 20 43 43 6c 69 70 3a |line voi|d CClip:|
|00002110| 3a 53 65 74 28 63 6f 6e | 73 74 20 52 65 63 74 26 |:Set(con|st Rect&|
|00002120| 20 63 6c 69 70 52 65 63 | 74 29 0d 7b 0d 09 43 6c | clipRec|t).{..Cl|
|00002130| 69 70 52 65 63 74 28 26 | 63 6c 69 70 52 65 63 74 |ipRect(&|clipRect|
|00002140| 29 3b 0d 7d 0d 0d 0d 69 | 6e 6c 69 6e 65 20 76 6f |);.}...i|nline vo|
|00002150| 69 64 20 43 43 6c 69 70 | 3a 3a 53 65 74 28 63 6f |id CClip|::Set(co|
|00002160| 6e 73 74 20 43 52 65 63 | 74 26 20 63 6c 69 70 52 |nst CRec|t& clipR|
|00002170| 65 63 74 29 0d 7b 0d 09 | 43 6c 69 70 52 65 63 74 |ect).{..|ClipRect|
|00002180| 28 63 6c 69 70 52 65 63 | 74 29 3b 0d 7d 0d 0d 0d |(clipRec|t);.}...|
|00002190| 0d 69 6e 6c 69 6e 65 20 | 76 6f 69 64 20 43 43 6c |.inline |void CCl|
|000021a0| 69 70 3a 3a 53 61 76 65 | 28 29 0d 7b 0d 09 69 66 |ip::Save|().{..if|
|000021b0| 20 28 66 43 6c 69 70 52 | 67 6e 20 3d 3d 20 4e 55 | (fClipR|gn == NU|
|000021c0| 4c 4c 29 0d 09 09 66 43 | 6c 69 70 52 67 6e 20 3d |LL)...fC|lipRgn =|
|000021d0| 20 4e 65 77 52 67 6e 28 | 29 3b 0d 09 47 65 74 43 | NewRgn(|);..GetC|
|000021e0| 6c 69 70 28 66 43 6c 69 | 70 52 67 6e 29 3b 0d 23 |lip(fCli|pRgn);.#|
|000021f0| 69 66 6e 64 65 66 20 4e | 44 45 42 55 47 0d 09 66 |ifndef N|DEBUG..f|
|00002200| 53 61 76 65 43 6f 75 6e | 74 2b 2b 3b 0d 23 65 6e |SaveCoun|t++;.#en|
|00002210| 64 69 66 0d 0d 7d 0d 0d | 0d 69 6e 6c 69 6e 65 20 |dif..}..|.inline |
|00002220| 76 6f 69 64 20 43 43 6c | 69 70 3a 3a 52 65 73 74 |void CCl|ip::Rest|
|00002230| 6f 72 65 28 29 0d 7b 0d | 09 53 65 74 43 6c 69 70 |ore().{.|.SetClip|
|00002240| 28 66 43 6c 69 70 52 67 | 6e 29 3b 0d 23 69 66 6e |(fClipRg|n);.#ifn|
|00002250| 64 65 66 20 4e 44 45 42 | 55 47 0d 09 66 53 61 76 |def NDEB|UG..fSav|
|00002260| 65 43 6f 75 6e 74 2d 2d | 3b 0d 23 65 6e 64 69 66 |eCount--|;.#endif|
|00002270| 0d 0d 7d 0d 0d 0d 2f 2f | 0d 2f 2f 20 49 6e 6c 69 |..}...//|.// Inli|
|00002280| 6e 65 73 20 66 6f 72 20 | 43 54 65 6d 70 52 67 6e |nes for |CTempRgn|
|00002290| 0d 2f 2f 0d 0d 0d 69 6e | 6c 69 6e 65 20 43 54 65 |.//...in|line CTe|
|000022a0| 6d 70 52 67 6e 3a 3a 6f | 70 65 72 61 74 6f 72 20 |mpRgn::o|perator |
|000022b0| 52 67 6e 48 61 6e 64 6c | 65 28 76 6f 69 64 29 0d |RgnHandl|e(void).|
|000022c0| 7b 0d 09 72 65 74 75 72 | 6e 20 66 54 65 6d 70 52 |{..retur|n fTempR|
|000022d0| 67 6e 3b 0d 7d 0d 0d 69 | 6e 6c 69 6e 65 20 43 54 |gn;.}..i|nline CT|
|000022e0| 65 6d 70 52 67 6e 3a 3a | 43 54 65 6d 70 52 67 6e |empRgn::|CTempRgn|
|000022f0| 28 63 6f 6e 73 74 20 52 | 65 63 74 26 20 61 72 65 |(const R|ect& are|
|00002300| 61 29 0d 7b 0d 09 66 54 | 65 6d 70 52 67 6e 20 3d |a).{..fT|empRgn =|
|00002310| 20 4e 65 77 52 67 6e 28 | 29 3b 0d 09 52 65 63 74 | NewRgn(|);..Rect|
|00002320| 52 67 6e 28 66 54 65 6d | 70 52 67 6e 2c 20 26 61 |Rgn(fTem|pRgn, &a|
|00002330| 72 65 61 29 3b 0d 7d 0d | 0d 69 6e 6c 69 6e 65 20 |rea);.}.|.inline |
|00002340| 43 54 65 6d 70 52 67 6e | 3a 3a 43 54 65 6d 70 52 |CTempRgn|::CTempR|
|00002350| 67 6e 28 63 6f 6e 73 74 | 20 43 54 65 6d 70 52 67 |gn(const| CTempRg|
|00002360| 6e 26 20 72 67 6e 29 0d | 7b 0d 09 66 54 65 6d 70 |n& rgn).|{..fTemp|
|00002370| 52 67 6e 20 3d 20 4e 65 | 77 52 67 6e 28 29 3b 0d |Rgn = Ne|wRgn();.|
|00002380| 09 43 6f 70 79 52 67 6e | 28 28 43 54 65 6d 70 52 |.CopyRgn|((CTempR|
|00002390| 67 6e 26 29 72 67 6e 2c | 20 66 54 65 6d 70 52 67 |gn&)rgn,| fTempRg|
|000023a0| 6e 29 3b 09 09 2f 2f 20 | 28 2d 29 20 63 6f 6e 73 |n);..// |(-) cons|
|000023b0| 74 0d 7d 0d 0d 69 6e 6c | 69 6e 65 20 43 54 65 6d |t.}..inl|ine CTem|
|000023c0| 70 52 67 6e 3a 3a 43 54 | 65 6d 70 52 67 6e 28 63 |pRgn::CT|empRgn(c|
|000023d0| 6f 6e 73 74 20 52 67 6e | 48 61 6e 64 6c 65 20 72 |onst Rgn|Handle r|
|000023e0| 67 6e 29 0d 7b 0d 09 66 | 54 65 6d 70 52 67 6e 20 |gn).{..f|TempRgn |
|000023f0| 3d 20 4e 65 77 52 67 6e | 28 29 3b 0d 09 43 6f 70 |= NewRgn|();..Cop|
|00002400| 79 52 67 6e 28 28 52 67 | 6e 48 61 6e 64 6c 65 29 |yRgn((Rg|nHandle)|
|00002410| 72 67 6e 2c 20 66 54 65 | 6d 70 52 67 6e 29 3b 2f |rgn, fTe|mpRgn);/|
|00002420| 2f 20 28 2d 29 0d 7d 0d | 0d 69 6e 6c 69 6e 65 20 |/ (-).}.|.inline |
|00002430| 43 54 65 6d 70 52 67 6e | 3a 3a 43 54 65 6d 70 52 |CTempRgn|::CTempR|
|00002440| 67 6e 28 29 0d 7b 0d 09 | 66 54 65 6d 70 52 67 6e |gn().{..|fTempRgn|
|00002450| 20 3d 20 4e 65 77 52 67 | 6e 28 29 3b 0d 7d 0d 0d | = NewRg|n();.}..|
|00002460| 0d 69 6e 6c 69 6e 65 20 | 43 54 65 6d 70 52 67 6e |.inline |CTempRgn|
|00002470| 3a 3a 7e 43 54 65 6d 70 | 52 67 6e 28 76 6f 69 64 |::~CTemp|Rgn(void|
|00002480| 29 0d 7b 0d 09 61 73 73 | 65 72 74 28 66 54 65 6d |).{..ass|ert(fTem|
|00002490| 70 52 67 6e 20 21 3d 20 | 4e 55 4c 4c 29 3b 0d 09 |pRgn != |NULL);..|
|000024a0| 44 69 73 70 6f 73 65 52 | 67 6e 28 66 54 65 6d 70 |DisposeR|gn(fTemp|
|000024b0| 52 67 6e 29 3b 0d 7d 0d | 0d 69 6e 6c 69 6e 65 20 |Rgn);.}.|.inline |
|000024c0| 76 6f 69 64 20 43 54 65 | 6d 70 52 67 6e 3a 3a 53 |void CTe|mpRgn::S|
|000024d0| 65 74 28 63 6f 6e 73 74 | 20 43 52 65 63 74 26 20 |et(const| CRect& |
|000024e0| 62 6f 75 6e 64 73 29 0d | 7b 0d 09 52 65 63 74 52 |bounds).|{..RectR|
|000024f0| 67 6e 28 66 54 65 6d 70 | 52 67 6e 2c 20 62 6f 75 |gn(fTemp|Rgn, bou|
|00002500| 6e 64 73 29 3b 0d 7d 0d | 0d 69 6e 6c 69 6e 65 20 |nds);.}.|.inline |
|00002510| 76 6f 69 64 20 43 54 65 | 6d 70 52 67 6e 3a 3a 4c |void CTe|mpRgn::L|
|00002520| 6f 63 61 6c 54 6f 47 6c | 6f 62 61 6c 28 76 6f 69 |ocalToGl|obal(voi|
|00002530| 64 29 0d 7b 0d 09 3a 3a | 4c 6f 63 61 6c 54 6f 47 |d).{..::|LocalToG|
|00002540| 6c 6f 62 61 6c 28 28 50 | 6f 69 6e 74 20 2a 29 20 |lobal((P|oint *) |
|00002550| 26 28 28 2a 66 54 65 6d | 70 52 67 6e 29 2d 3e 72 |&((*fTem|pRgn)->r|
|00002560| 67 6e 42 42 6f 78 2e 74 | 6f 70 29 29 3b 0d 09 3a |gnBBox.t|op));..:|
|00002570| 3a 4c 6f 63 61 6c 54 6f | 47 6c 6f 62 61 6c 28 28 |:LocalTo|Global((|
|00002580| 50 6f 69 6e 74 20 2a 29 | 20 26 28 28 2a 66 54 65 |Point *)| &((*fTe|
|00002590| 6d 70 52 67 6e 29 2d 3e | 72 67 6e 42 42 6f 78 2e |mpRgn)->|rgnBBox.|
|000025a0| 62 6f 74 74 6f 6d 29 29 | 3b 0d 7d 0d 0d 0d 69 6e |bottom))|;.}...in|
|000025b0| 6c 69 6e 65 20 76 6f 69 | 64 20 43 54 65 6d 70 52 |line voi|d CTempR|
|000025c0| 67 6e 3a 3a 47 6c 6f 62 | 61 6c 54 6f 4c 6f 63 61 |gn::Glob|alToLoca|
|000025d0| 6c 28 76 6f 69 64 29 0d | 7b 0d 09 3a 3a 47 6c 6f |l(void).|{..::Glo|
|000025e0| 62 61 6c 54 6f 4c 6f 63 | 61 6c 28 28 50 6f 69 6e |balToLoc|al((Poin|
|000025f0| 74 20 2a 29 20 26 28 28 | 2a 66 54 65 6d 70 52 67 |t *) &((|*fTempRg|
|00002600| 6e 29 2d 3e 72 67 6e 42 | 42 6f 78 2e 74 6f 70 29 |n)->rgnB|Box.top)|
|00002610| 29 3b 0d 09 3a 3a 47 6c | 6f 62 61 6c 54 6f 4c 6f |);..::Gl|obalToLo|
|00002620| 63 61 6c 28 28 50 6f 69 | 6e 74 20 2a 29 20 26 28 |cal((Poi|nt *) &(|
|00002630| 28 2a 66 54 65 6d 70 52 | 67 6e 29 2d 3e 72 67 6e |(*fTempR|gn)->rgn|
|00002640| 42 42 6f 78 2e 62 6f 74 | 74 6f 6d 29 29 3b 0d 7d |BBox.bot|tom));.}|
|00002650| 0d 0d 69 6e 6c 69 6e 65 | 20 43 52 65 63 74 20 43 |..inline| CRect C|
|00002660| 54 65 6d 70 52 67 6e 3a | 3a 42 6f 75 6e 64 73 28 |TempRgn:|:Bounds(|
|00002670| 76 6f 69 64 29 20 63 6f | 6e 73 74 0d 7b 0d 09 72 |void) co|nst.{..r|
|00002680| 65 74 75 72 6e 20 28 2a | 66 54 65 6d 70 52 67 6e |eturn (*|fTempRgn|
|00002690| 29 2d 3e 72 67 6e 42 42 | 6f 78 3b 0d 7d 0d 0d 0d |)->rgnBB|ox;.}...|
|000026a0| 23 65 6e 64 69 66 0d 0d | 00 00 00 00 00 00 00 00 |#endif..|........|
|000026b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000026c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000026d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000026e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000026f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002700| 00 00 01 00 00 00 01 76 | 00 00 00 76 00 00 00 52 |.......v|...v...R|
|00002710| 62 73 6f 6c 65 74 65 20 | 6d 61 72 6b 65 72 0d 0d |bsolete |marker..|
|00002720| 09 55 6e 6d 61 72 6b 20 | 4c 61 73 74 43 68 61 6e |.Unmark |LastChan|
|00002730| 0e 54 44 72 61 77 43 6f | 6e 74 65 78 74 2e 68 74 |.TDrawCo|ntext.ht|
|00002740| 02 00 00 00 54 45 58 54 | 43 57 49 45 01 00 00 d0 |....TEXT|CWIE....|
|00002750| 00 00 54 45 58 54 43 57 | 49 45 01 00 00 d0 00 80 |..TEXTCW|IE......|
|00002760| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002770| 00 00 a8 ef 48 bc 00 00 | 26 28 00 00 01 c8 5b c2 |....H...|&(....[.|
|00002780| 3a 5d 2b 3a 2a 29 2a 28 | 5b c2 3a 5d 2b 2e 28 5b |:]+:*)*(|[.:]+.([|
|00002790| 61 2d 7a 5d 2b 29 a8 32 | 29 a8 31 2f 0d 09 09 53 |a-z]+).2|).1/...S|
|000027a0| 65 74 20 53 68 6f 72 74 | 20 22 7b a8 31 7d 22 0d |et Short| "{.1}".|
|000027b0| 09 09 53 65 74 20 53 75 | 66 66 69 78 20 7b a8 32 |..Set Su|ffix {.2|
|000027c0| 7d 0d 09 45 6c 73 65 20 | 49 66 20 22 7b 57 69 6e |}..Else |If "{Win|
|000027d0| 64 6f 77 7d 22 20 3d 7e | 20 2f 3a 2a 28 5b c2 3a |dow}" =~| /:*([.:|
|000027e0| 5d 2b 3a 2a 29 2a 28 5b | c2 3a 5d 2b 29 a8 31 2f |]+:*)*([|.:]+).1/|
|000027f0| 0d 09 09 53 65 74 20 53 | 68 6f 72 74 20 22 7b a8 |...Set S|hort "{.|
|00002800| 00 00 00 1e 00 62 00 0e | 01 d3 02 6d 00 62 00 0e |.....b..|...m.b..|
|00002810| 01 d3 02 6d 00 00 04 f5 | 00 00 00 00 00 00 00 00 |...m....|........|
|00002820| 00 00 00 00 00 48 00 09 | 4d 6f 6e 61 63 6f 00 00 |.....H..|Monaco..|
|00002830| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002840| 00 00 00 00 00 00 00 00 | 00 03 00 04 00 41 01 6c |........|.....A.l|
|00002850| 02 8d 03 ee 00 41 01 6c | 02 8d 03 ee ad fc 28 8d |.....A.l|......(.|
|00002860| 00 00 22 13 00 00 22 13 | 00 00 21 10 01 00 00 00 |.."...".|..!.....|
|00002870| 00 04 00 01 00 01 00 00 | 01 00 00 00 01 76 00 00 |........|.....v..|
|00002880| 00 76 00 00 00 52 02 b0 | f3 38 2f be 00 00 00 1c |.v...R..|.8/.....|
|00002890| 00 52 00 01 4d 50 53 52 | 00 01 00 12 4d 57 42 42 |.R..MPSR|....MWBB|
|000028a0| 00 00 00 2a 03 f0 ff ff | 00 00 00 00 00 00 00 00 |...*....|........|
|000028b0| 03 ed ff ff 00 00 00 22 | 00 00 00 00 03 f0 ff ff |......."|........|
|000028c0| 00 00 00 6e 00 00 00 00 | 00 00 00 00 00 00 00 00 |...n....|........|
|000028d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+